package com.lanou3g.demo.service;

import com.lanou3g.demo.controller.params.AdminParams;
import com.lanou3g.demo.entity.AdminInfo;
import com.lanou3g.demo.entity.impl.AdminInfoImpl;

import java.sql.SQLException;
import java.util.List;

public interface IAdminInfoService {
    // 查看个人信息
    AdminInfo selectAdminInfoWithRoleName(AdminInfo adminInfo);

    // 修改个人信息 姓名,电话,Email
    boolean updateAdminInfo(AdminInfo adminInfo);

    // 修改密码之校验原密码
    boolean findOne(AdminInfo adminInfo1, AdminInfo adminInfo2);

    // 修改密码(新密码)
    boolean updateAdminPwd(AdminInfo adminInfo);

    // 查看所有的管理员
    List<AdminInfoImpl> selectAllAdmin();

    // 查询管理员
    List<AdminInfoImpl> selectRoleWithAdmin(String roleName);

    // 添加管理员
    boolean addAdminWithRole(AdminParams adminParams) throws SQLException;

    // 修改管理员信息回显
    AdminParams modifyFindAdmin(AdminInfoImpl adminInfo) throws SQLException;

    // 修改管理员信息
    boolean modifyAdmin(AdminParams adminParams, String roleId) throws SQLException;

    // 删除管理员
    boolean deleteAdmin(String adminId) throws SQLException;

    // 密码重置
    int resetPwd(List<String> adminIds) throws SQLException;
}
